package com.daoliuhe.scaffold.service;

import com.daoliuhe.scaffold.model.ListEntry;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

public interface ListEntryService {

    Object getChildOneLevelData(ListEntry entity);

    Object saveBatchValues(String listId, String parentId, String entryValues, String listNameApi);

    Object saveOrUpdate(ListEntry entity);

    /**
     * 层叠列表节点的新增或者修改
     *
     * @param entity
     * @return
     */
    Object saveOrUpdateNode(ListEntry entity);

    List<ListEntry> selectByEntryValue(ListEntry entry);

    List<ListEntry> selectByListApiName(String apiName);

    Object getPageData(ListEntry entry);

    Object getAllData(ListEntry entry);

    Object selectTreeData(ListEntry entry);

    String selectFullName(int id);

    /**
     * 功能模块批量启用
     *
     * @param ids
     */
    void updateBatchDisable(ArrayList<String> ids);

    /**
     * 功能模块批量禁用
     *
     * @param ids
     */
    void updateBatchEnable(ArrayList<String> ids);


    /**
     * 检查简单列表的列表项是否重复
     *
     * @param listId          列表的id
     * @param entryValues     列表项
     * @return 检查结果
     */
    Map<String, Object> checkSimpleEntryRepeat(String listId, String entryValues);

}
